﻿#include "menuwidget.h"
#include "common.h"
#include "cppfont.h"
#include "socket.h"

MenuWidget::MenuWidget() {

}

void MenuWidget::show() {
    Bmp b1("./res/menu.bmp");
    b1.show();
}

int MenuWidget::setPageWidget(int x, int y) {
    int m_page;
    bool isExit = false;
    //根据点击的不同 坐标 ，判断点击的是哪个按钮，然后进行  换页
    if(x >= 0 && x <= 120 && y >= 0 && y < 130) { //第一页
        m_page = E_MENU_PAGE1;
    } else if(x >= 0 && x <= 120 && y >= 130 && y < 250) { //第二页
        m_page = E_MENU_PAGE2;
    } else if(x >= 0 && x <= 120 && y >= 250 && y < 350) { //第3页
        m_page = E_MENU_PAGE3;
    } else if(x >= 0 && x <= 120 && y >= 350 && y < 480) { //第4页  --退出
        m_page = E_MENU_PAGE4;
    }

    switch (m_page) {
        case E_MENU_PAGE1: {
            Page1Widget w;
            w.show();
        }

        break;
        case E_MENU_PAGE2: {
            Page2Widget w;
            w.show();
        }
        break;
        case E_MENU_PAGE3: {
            Page3Widget w;
            w.show();
        }
        break;
        case E_MENU_PAGE4: {
            quit();
            isExit = true;
            exit(0);
        }

        break;
    }

}

void MenuWidget::quit() {
    // 发送断开连接信号
    string buf = "{\"type\":4}";
    Socket::getSocket()->sendMsg(buf);

    // 清屏
    CppFont::clearArea(0, 0, 800, 480, 0x00ffffff);

    // 释放堆空间
    for(int i = 0; i < (int)order.size(); i++) {
        delete order[i];
    }
    order.clear();
}
